package com.pxst.fi.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;

import com.pxst.annotations.validated.DateValidator;
import com.pxst.entity.BaseEntity;
import com.pxst.fi.req.FiOrderReq;
import lombok.Data;

import javax.validation.constraints.*;

/**
 * 第三方支付设置(tpi110)
 * @TableName sys_third_party_setting
 */
@TableName(value ="sys_third_party_setting")
@Data
public class SysThirdPartySettingEntity extends BaseEntity {
    /**
     * 
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;

    /**
     * 支持商户ID(为空时表示全商户可用)
     */
    private Long merchantId;

    /**
     * 第三方支付配置ID
     */
    private Long thirdPartyConfigId;

    /**
     * 币种
     */
    private String currency;

    /**
     * 交易类型 1: 充值, 2: 下发, 4: 代付
     */
    private Integer tradeType;

    /**
     * 操作类型 1: 扫码, 2: 网银, 3: 银行卡转账, 4: 充值卡, 5: 宝卡, 6: 纯代付, 7: 卡卡, 8: 云卡, 9: Zalo 扫码, 10: Momo 扫码, 11: Viettelpay 扫码, 12: Viettelpay 固码扫码, 13: Viettel 充值卡, 14: MobiFone 充值卡, 15: VinaPhone 充值卡, 16: Zing 充值卡
     */
    private Integer type;

    /**
     * 交易种类
     */
    private Integer txnMode;

    /**
     * 充值费率%
     */
    private BigDecimal trRate;

    /**
     * 交易费用
     */
    private BigDecimal trRateAmount;

    /**
     * 银行手续费
     */
    private BigDecimal bankFee;

    /**
     * 单笔最大金额
     */
    private BigDecimal tradeMax;

    /**
     * 单笔最小金额
     */
    private BigDecimal tradeMin;

    /**
     * 状态 1.Available(可用) 0.Suspended(暂停)
     */
    private Integer status;

    /**
     * 第三方限制最大金额
     */
    private BigDecimal thirdPartyMax;

    /**
     * 第三方限制最小金额
     */
    private BigDecimal thirdPartyMin;

}